Systems and methods for providing an interactive user interface using a film and projector

ABSTRACT

The present disclosure relates to interactive projection systems. In one implementation, an interactive projection system for a vehicle window may include a film having a plurality of sensors embedded therein, the plurality of sensors configured to detect local pressure disturbance on the film; a projector configured to project a user interface onto the film; and at least one processor. The at least one processor may be configured to perform operations, including receiving a detection of a local pressure disturbance from at least one of the plurality of sensors, based on a location of the detected local pressure disturbance, determining a change in the user interface, and transmitting a command to the projector to modify a projected user interface according to the determined change.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. application Ser. No.15/915,301, filed Mar. 8, 2018. The contents of the above areincorporated herein by reference in their entirety.

TECHNICAL FIELD

This disclosure relates generally to the field of interactive userinterfaces. More specifically, and without limitation, this disclosurerelates to systems and methods for providing an interactive interfaceusing a film and projector.

BACKGROUND

There are many instances in which an interactive touchscreen may be usedto replace a stationary sign, such as a retail display, an informationalkiosk, or the like. However, there are environments in which atouchscreen is too bulky or heavy to effectively replace a stationarysign. For example, automobile dealerships use paper adhered to vehiclewindows to convey information to potential consumers. Such paper may beeasily ripped or defaced, and can only display a limited amount ofinformation. A touchscreen would be advantageous as it would enable thedisplay of more (and more dynamic) information. However, an interactivetouchscreen may be unsuitable for adherence to vehicle windows onaccount of the weight of the touchscreen, which may require a strongadhesive that may be damaging to the vehicle window.

In another example, a seller for a home may use paper on a for sale signto convey information to potential consumers. However, an interactivetouchscreen may be unsuitable for this use on account of its sensitivityto the elements, such as rain, snow, or the like.

SUMMARY

Disclosed systems and methods for generating a user interface using afilm and projector and enabling interaction with the generatedinterface. Accordingly, disclosed systems and methods result in animproved user interface over extant projected interfaces, which aregenerally static. Moreover, disclosed systems and methods may allow forselective power control and interface generation along with dynamicinterface generation to incorporate customization. Accordingly,disclosed systems and methods result in a more energy-efficient systemalong with an improved user interface over extant projected interfaces,which are generally generic. Finally, disclosed systems and methods mayallow for dynamic interface generation and/or power control to allayprivacy concerns. Accordingly, disclosed systems and methods use atechnical solution to solve privacy concerns that inhere in the use ofcustomized interfaces.

There are many possible applications for such capabilities. Examples ofapplications include use on vehicle windows, e.g., in the context of anautomobile dealership. Additional examples of application may includeuse on for sale signs for property, e.g., in the context of home sales.

According to an exemplary embodiment of the present disclosure, aninteractive projection system for a vehicle window may comprise a filmhaving a plurality of sensors embedded therein, the plurality of sensorsconfigured to detect local pressure disturbance on the film, a projectorconfigured to project a user interface onto the film, and at least oneprocessor. The at least one processor may be configured to performoperations that may comprise receiving a detection of a local pressuredisturbance from at least one of the plurality of sensors; based on alocation of the detected local pressure disturbance, determining achange in the user interface; and transmitting a command to theprojector to modify a projected user interface according to thedetermined change.

According to another embodiment of the present disclosure, aninteractive projection system for a vehicle window may comprise a filmhaving a plurality of sensors embedded therein, a projector configuredto project onto the film, and at least one processor. The plurality ofsensors may be configured to detect local pressure disturbance on thefilm. The at least one processor may be configured to perform operationsthat may comprise generating a user interface; transmitting a command tothe projector to project a user interface onto the film; receivingpressure measurements from at least one of the plurality of sensors;determining that the pressure measurements are indicative of aparticular motion; based on the determination, generating an animationfor the user interface; and transmitting a plurality of commands to theprojector to project the animation of the user interface.

According to an exemplary embodiment of the present disclosure, aninteractive projection system for a vehicle window may comprise a film,a projector configured to project a user interface onto the film, and atleast one processor. The film may have a plurality of sensors embeddedtherein, the plurality of sensors configured to detect local pressuredisturbance on the film; a wireless communications device embeddedtherein; and at least one microprocessor embedded therein and configuredto receive pressure measurements from at least one of the plurality ofsensors and transmit, using the wireless communications device, thereceived pressure measurements. The at least one processor may beconfigured to perform operations that may comprise receiving thepressure measurements from the wireless communications device;determining a local pressure disturbance based on the received pressuremeasurements; based on a location of the determined local pressuredisturbance, determining a change in the user interface; andtransmitting a command to the projector to modify a projected userinterface according to the determined change.

According to another embodiment of the present disclosure, aninteractive projection system for a vehicle window may comprise a film,a projector configured to project a user interface onto the film, and atleast one processor. The at least one processor may be configured toperform operations that may comprise receiving an indication ofproximity of a mobile device associated with a user; in response to theindication of proximity, generating the user interface; and transmittinga command to the projector to project the generated user interface.

According to an exemplary embodiment of the present disclosure, aninteractive projection system for a vehicle window may comprise a film,a projector adapted to have a power on mode and a low power mode, and atleast one processor. The at least one processor may be configured toperform operations that may comprise receiving an indication ofproximity of a mobile device; in response to the indication ofproximity, transmitting a command to the projector to switch from thelow power mode to the power on mode; generating the user interface; andtransmitting a command to the projector to project the generated userinterface.

According to another embodiment of the present disclosure, aninteractive projection system for a vehicle window may comprise a film,a projector, and at least one processor. The at least one processor maybe configured to perform operations that may comprise receiving anindication of proximity of a mobile device; in response to theindication of proximity, transmitting a command to the projector topower on; generating the user interface; transmitting a command to theprojector to project the generated user interface; receiving anindication that the mobile device is beyond a proximity threshold; andin response to the indication that the mobile device is beyond theproximity threshold, transmitting a command to the projector to poweroff.

Additional embodiments of the present disclosure include non-transitorycomputer-readable media storing instructions that cause one or moreprocessors to execute any of the methods disclosed herein.

Additional objects and advantages of the present disclosure will be setforth in part in the following detailed description, and in part will beobvious from the description, or may be learned by practice of thepresent disclosure. The objects and advantages of the present disclosurewill be realized and attained by means of the elements and combinationsparticularly pointed out in the appended claims.

It is to be understood that the foregoing general description and thefollowing detailed description are exemplary and explanatory only, andare not restrictive of the disclosed embodiments.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which comprise a part of this specification,illustrate several embodiments and, together with the description, serveto explain the disclosed principles. In the drawings:

FIG. 1 is a schematic representation of an example interactiveprojection system, consistent with embodiments of the presentdisclosure.

FIG. 2A is a schematic representation of an example film for aninteractive projection system, consistent with embodiments of thepresent disclosure.

FIG. 2B is a schematic representation of a cross-sectional view of thefilm of FIG. 2A.

FIG. 3 is a schematic representation of an example projector for aninteractive projection system, consistent with embodiments of thepresent disclosure.

FIG. 4A is a schematic representation of an exemplary interactiveprojection system used on a vehicle window, consistent with embodimentsof the present disclosure.

FIG. 4B is a schematic representation of another exemplary interactiveprojection system used on a vehicle window, consistent with embodimentsof the present disclosure.

FIG. 5 is a schematic representation of yet another exemplaryinteractive projection system used on a vehicle window, consistent withembodiments of the present disclosure.

FIG. 6 is a flowchart of an exemplary method for enabling userinteraction with a projection system, consistent with embodiments of thepresent disclosure.

FIG. 7 is a flowchart of an exemplary method for configuring aprojection system for animation based on user interaction, consistentwith embodiments of the present disclosure.

FIG. 8 is a flowchart of another exemplary method for configuring aprojection system for user interaction, consistent with embodiments ofthe present disclosure.

FIG. 9 is a flowchart of an exemplary method for configuring aprojection system for proximity-based projection, consistent withembodiments of the present disclosure.

FIG. 10 is a flowchart of an exemplary method for configuring aprojection system with proximity-based power control, consistent withembodiments of the present disclosure.

FIG. 11 is a flowchart of another exemplary method for configuring aprojection system with proximity-based power control, consistent withembodiments of the present disclosure.

FIG. 12 is a flowchart of an exemplary method for generating acustomized user interface for an interactive projection system,consistent with embodiments of the present disclosure.

DETAILED DESCRIPTION

The disclosed embodiments relate to systems and methods for providing aninteractive interface using a film and projector. Embodiments of thepresent disclosure may be implemented using a film, a projector, and atleast one processor, as described below. In some embodiments, the atleast one processor may comprise a microprocessor, such as a centralprocessing unit (CPU), a graphics processing unit (GPU), or otherelectronic circuitry capable of carrying out the instructions of acomputer program by performing the operations specified by theinstructions. Alternatively or concurrently, the at least one processormay comprise one or more special-purpose devices built according toembodiments of the present disclosure using suitable circuit elements,e.g., one or more application-specific integrated circuits (ASICs),field-programmable gate arrays (FPGAs), or the like.

According to an aspect of the present disclosure, an interactiveprojection system may comprise a film, a projector, and at least oneprocessor. For example, the film may comprise any material configured toreflect light projected from at least one angle away from the film. Thefilm may be lightweight. For example, it may comprise one or moreplastics.

In some embodiments, the film may include one or more componentsembedded therein. For example, the film may have a plurality of sensorsembedded therein. The sensors may comprise pressure sensors, such aspiezoelectric sensors, capacitive sensors, electromagnetic sensors,optical pressure sensors, potentiometric sensors, or the like. Theplurality of sensors may be configured to detect local pressuredisturbance on the film and/or generate pressure measurements. Forexample, the sensors may be configured to detect the local pressuredisturbance (and/or generate pressure measurements) based on a change inan electrical property of the sensors. The electrical property maycomprise at least one of resistance, inductance, or capacitance. Inanother example, the sensors may be configured to detect the localpressure disturbance (and/or generate pressure measurements) based on achange in an optical property of the sensors.

Additionally or alternatively, the film may further include a wirelesscommunications device embedded therein. The wireless communicationsdevice may comprise a network interface controller (NIC) configured tocommunication over one or more computer networks. For example, the NICmay communicate over a cellular network (such as Global System forMobile Communications (GSM), Code-division multiple access (CDMA),General Packet Radio Service (GPRS), one or more 3G networks such asEnhanced Data rates for GSM Evolution (EDGE) or CDMA2000, one or more 4Gnetworks such as International Mobile Telecommunications Advance(IMT-Advance), Long Term Evolution (LTE), Wi-Fi, or the like).Accordingly, the communications device may be configured to communicatea detection from at least one sensor to at least one processor.

Additionally or alternatively, one or more of the plurality of sensorsmay communicate detections and/or pressure measurements via a wirelessfrequency. For example, the one or more of the plurality of sensors mayhave one or more antennae configure to enable communication on thewireless frequency, such as a radio frequency.

Additionally or alternatively, the film may further include at least onemicroprocessor embedded therein. The at least one microprocessor may becommunicatively coupled, through one or more wired and/or wirelessconnections, to one or more of the sensors embedded in the film.Accordingly, the at least one microprocessor may be configured toreceive pressure measurements from at least one of the plurality ofsensors. In embodiments having an embedded wireless communicationsdevice, the at least one microprocessor may also transmit, using thewireless communications device, the received pressure measurements to atleast one remote processor.

The projector may comprise any optical device configured to shine lightonto a surface. For example, the projector may use one or more lightbulbs, one or more lasers, or any combination thereof, in order togenerate the light. In some embodiments, the projector may furthercomprise a focusing device (e.g., one or more lenses). The light may begenerated according to one or more inputs to the projector, e.g., inorder to form an image or a series of images. Accordingly, the projectormay be configured to project a user interface onto the film.

The at least one processor may comprise at least one microprocessorembedded in the film (as described above). Accordingly, any stepsperformed by the at least one processor described below may be performedby at least one microprocessor at least one processor remote from thefilm. Additionally or alternatively, the at least one processor mayencased within a housing with the projector. For example, the housingmay comprise a shell formed of plastic and/or metal to include theprojector and the at least one processor.

In one embodiment, the at least one processor may be configured toreceive a detection of a local pressure disturbance from at least one ofthe plurality of sensors. For example, as explained above, the at leastone processor may receive the detection via a wired connected to one ormore of the plurality of sensors and/or via a wireless connection to oneor more of the plurality of sensors.

Additionally or alternatively, the at least one processor may beconfigured to receive pressure measurements from the wirelesscommunications device. For example, as explained above, the at least oneprocessor may receive the measurements via a wired connected to one ormore of the plurality of sensors and/or via a wireless connection to oneor more of the plurality of sensors. In addition, the at least oneprocessor may be further configured to determine a local pressuredisturbance based on the received pressure measurements. For example,the at least one processor may determine a location of the disturbance,as explained below. In addition, the at least one processor maydetermine changes in the location over a period of time, as explainedbelow.

The at least one processor may be further configured to, based on alocation of the detected local pressure disturbance, determine a changein a user interface. For example, the at least one processor maydetermine a popup window to be generated if the location is within oneor more regions of the film. In another example, the at least oneprocessor may determine a new user interface to be generated if thelocation is within one or more regions of the film. In yet anotherexample, the at least one processor may determine no change if thelocation is within one or more regions of the film.

In certain aspects, the detection may be monitored for changes (or forthe lack thereof) across a period of time and/or across locations of thefilm. In such aspects, the determined change may be further based on themonitored change and/or the magnitude of the period of time. Forexample, the at least one processor may determine a popup window to begenerated if the detection remains in the same location for a thresholdperiod of time. In another example, the at least one processor maydetermine a new user interface to be generated if the location of thedetection moves across the film in one or more patterns.

The location may be determined based on indexing the at least one sensorfrom which the detection was received to one or more known locations ofthe at least one sensor. For example, the detection may include a stampidentifying the sensor from which it originated. The stamp may have beenadded by the sensor or by a readout circuit connected to the sensors andmay include a number (e.g., a hexadecimal code, an integer number, orthe like) identifying the sensor from which the detection originated.Accordingly, the at least one processor may map the identifier in thestamp to one or more variables indicating location on the film, e.g.,via a relational database. Alternatively, the readout circuit mayperform this mapping and additionally or alternatively include thelocation on the stamp. For example, the at least one processor maydetermine that the location of the detection is near point P if thesensor that sent the detection is located at point P.

If the detection is received from two or more sensors, the at least oneprocessor may interpolate a location based on indexing one sensor fromwhich the detection was received to a first known location and anothersensor from which the detection was received to a second known location.For example, the at least one processor may perform an average (orweighted average where the weight is based on a magnitude of eachdetection received) of the first known location and second knownlocation. Moreover, if the detection is received from three or moresensors, the at least one processor may use a localization algorithm,such as triangulation, to determine the location.

Additionally or alternatively, the at least one processor may receivethe location with the detection. For example, the at least one processormay receive the location from one or more microprocessors coupled to thesensors and configured to interpolate a location from one or moredetections received from the sensors (e.g., using any of the techniquesdiscussed above) and send the location with the detection(s) to the atleast one processor. Accordingly, in some embodiments, the at least onemicroprocessor may also perform monitoring of changes of the detections,as described above, and send the monitored changes to the at least oneprocessor.

The at least one processor may be further configured to transmit acommand to the projector to modify a projected user interface accordingto the determined change. For example, the at least one processor maysend one or more graphics comprising a user interface incorporating thedetermined change to the projector. The one or more graphics may be sentvia a wired connection to the projector and/or via a wireless connectionto the projector.

In one embodiment, at least one processor may be configured to generatea user interface. For example, the at least one processor may generateone or more graphics and may layer the one or more graphics to form theuser interface. The at least one processor may retrieve the one or moregraphics from one or more memories (e.g., a volatile memory such as arandom access memory (RAM) or a non-volatile memory such as a hard diskdrive or flash memory).

The at least one processor may be further configured to transmit acommand to the projector to project a user interface onto the film. Forexample, as explained above, the at least one processor may send the oneor more graphics comprising the user interface to the projector. The oneor more graphics may be sent via a wired connection to the projectorand/or via a wireless connection to the projector.

The at least one processor may be further configured to receive pressuremeasurements from at least one of the plurality of sensors. For example,as explained above, the at least one processor may receive themeasurements via a wire connected to one or more of the plurality ofsensors and/or via a wireless connection to one or more of the pluralityof sensors.

The at least one processor may be further configured to determine thatthe pressure measurements are indicative of a particular motion. Forexample, the at least one processor may map locations of themeasurements (determined, for example, as described above) to one ormore known patterns. In addition, the at least one processor may mapchanges (or lack thereof) in location over a period of time to one ormore known patterns. For example, the at least one processor may use adatabase mapping identifiers of particular motions to one or morefeatures of the motions, such as a spatial and/or temporal patternformed by the plurality of locations over time.

The at least one processor may be further configured to, based on thedetermination, generate an animation for the user interface. Forexample, the at least one processor may determine a zooming animation tobe generated if the measurements are indicative of a double-tap by auser (e.g., two pressure distortions nearby in time and location), apinch-and-zoom by a user (e.g., two simultaneous pressure distortions indifferent locations that move together or apart over time), or the like.In another example, the at least one processor may determine a scrollinganimation to be generated if the measurements are indicative of ascrolling motion (e.g., a single pressure distortion moving in asubstantially vertical direction) or the like.

The at least one processor may be further configured to transmit aplurality of commands to the projector to project the animation of theuser interface. For example, the animation may comprise one or moreframes, each frame having one or more graphics forming a user interface,the frames arranged to create the appearance of motion when projected ina sequence in rapid (e.g., 15 frames per second, 30 frames per second,or the like) succession.

In one embodiment, at least one processor may be configured to receivingan indication of proximity of a mobile device. For example, the at leastone processor may receive global positioning system (GPS) coordinatesand/or other positional indicators (such as received signal strength,time of arrival one or more network signals at the mobile device, angleof arrival of one or more network signals at the mobile device, or thelike) from which the at least one processor may determine a location ofthe mobile device. Alternatively, the mobile device may calculate itsown location and send the location directly to the at least oneprocessor.

The at least one processor may be further configured to generate a userinterface. For example, the at least one processor may generate one ormore graphics and may layer the one or more graphics to form the userinterface. The at least one processor may retrieve the one or moregraphics from one or more memories. In some embodiments, the at leastone processor may generate the user interface also in response to theindication of proximity.

The at least one processor may be further configured to transmit acommand to the projector to project the generated user interface. Forexample, as explained above, the at least one processor may send the oneor more graphics comprising the user interface to the projector. The oneor more graphics may be sent via a wired connection to the projectorand/or via a wireless connection to the projector. In some embodiments,the at least one processor may transmit the command also in response tothe indication of proximity.

Additionally or alternatively, the at least one processor may be furtherconfigured to, in response to the indication of proximity, transmit acommand to the projector to switch from the low power mode to the poweron mode. For example, the at least one processor may send the commandvia a wired connection to the projector and/or via a wireless connectionto the projector.

Additionally or alternatively, the at least one processor may be furtherconfigured to, in response to the indication of proximity, transmit acommand to the projector to power on. For example, the at least oneprocessor may send the command via a wired connection to the projectorand/or via a wireless connection to the projector.

The at least one processor may be further configured to receive anindication that the mobile device is beyond a proximity threshold. Theproximity threshold may comprise, for example, a shortest distancethreshold, a Lebesgue distance, a distance along a single axis, or thelike. For example, the at least one processor may receive updated GPScoordinates and/or other updated positional indicators (such as receivedsignal strength, time of arrival of one or more network signals at themobile device, angle of arrival of one or more network signals at themobile device, or the like) from which the at least one processor maydetermine an updated location of the mobile device. Alternatively, themobile device may calculate its own updated location and send thelocation directly to the at least one processor. The at least oneprocessor may then determine whether the updated location is outside aparticular threshold (e.g., more than 10 meters from a particularlocation, more than 20 feet from a particular location, or the like).The particular threshold may comprise the proximity threshold. Moreover,the proximity threshold may vary by direction, e.g., 10 feet in aplurality of directions (e.g., defined by an angle range) and yet 30feet in another plurality of directions (e.g., defined by a differentangle range). Thus, the at least one processor may react to mobiledevices approaching a front of the film with a proximity threshold thatis relaxed compared to that for mobile devices approaching a back of thefilm.

The at least one processor may be further configured to, in response tothe indication that the mobile device is beyond the proximity threshold,transmit a command to the projector to power off. For example, the atleast one processor may send the command via a wired connection to theprojector and/or via a wireless connection to the projector.

In any of the embodiments above, the at least one processor may befurther configured to receive one or more indicators of interestassociated with the mobile device. For example, the at least oneprocessor may receive the indicators from one or more applicationsrunning on the mobile device. Additionally or alternatively, the atleast one processor may use an authorization obtained from the mobiledevice to retrieve the indicators form one or more remote servers.

The at least one processor may be further configured to generate acustomized user interface based on the one or more indicators. Forexample, the at least one processor may select and/or organize one ormore graphics (and/or text) comprising the customized user interface toprioritize graphics and text aligned with the indicators of interest.For example, the at least one processor may map the indicators ofinterest to one or more predetermined profiles having one or morecharacteristics and may select the graphics and text using a relationaldatabase indexing characteristics to graphics and text. Additionally oralternatively, the at least one processor may determine strength scoresfor each indicator of interest and then organize the selected graphicsand text to prioritize those matching indicators with the highestscores.

The at least one processor may be further configured transmit a commandto the projector to project the customized user interface. For example,the at least one processor may send the command via a wired connectionto the projector and/or via a wireless connection to the projector.

In such embodiments, the at least one processor may be furtherconfigured to determine one or more automotive preferences based on theone or more indicators. For example, as explained above, the indicatorsmay be mapped to one or more automotive preferences, e.g., using arelational database and/or feature model. For example, an automotivepreference may comprise one or more characteristics of a user that mayinfluence a vehicle purchase, such as liking outdoors, caring for theenvironment, having a job as a contractor, or the like. Accordingly,generating the customized user interface may be based on the one or moreautomotive preferences, similar to the generation based on theindicators explained above.

Additionally or alternatively, the at least one processor may be furtherconfigured to receiving an indication that the mobile device is beyond aproximity threshold, as explained above, or may receive a secondindication of proximity of a second mobile device (e.g., the at leastone processor may receive GPS coordinates and/or other positionalindicators from which the at least one processor may determine alocation of the second mobile device, or may receive the locationdirectly from the second mobile device and may then determine whetherthe location of the second mobile device is within a particularthreshold that may comprise the proximity threshold). In response to theindication that the mobile device is beyond the proximity thresholdand/or receiving the second indication, the at least one processor maygenerate a default user interface and transmit a command to theprojector to replace the customized user interface with the default userinterface. For example, the at least one processor may send the commandvia a wired connection to the projector and/or via a wireless connectionto the projector.

Embodiments of the present disclosure also relate to methods andcomputer-readable media that implement the above embodiments.

Reference will now be made in detail to exemplary embodiments andaspects of the present disclosure, examples of which are illustrated inthe accompanying drawings.

FIG. 1 is a schematic representation of example interactive projectionsystem 100. As depicted in FIG. 1, system 100 may include a projector101 in communication with a processor 105 (e.g., via a wiredconnection). Additionally or alternatively, projector 101 maycommunicate with a communications device 109 (e.g., via a wiredconnection and/or a wireless connection). Projector 101 may beconfigured to project a user interface onto a film (not shown).

As further depicted in FIG. 1, system 100 may include one or morepressure sensors 103. For example, sensors 103 may be embedded withinthe film (not shown). Sensors 103 may be in communication with processor105 to transmit pressure measurements. Additionally or alternatively,sensors 103 may communicate with communications device 109 (e.g., via awired connection and/or a wireless connection) to transmit pressuremeasurements.

Processor 105 and/or sensors 103 may further be in communication withmemory 107. For example, memory 107 may store the pressure measurementsfrom sensors 103 and/or data from processor 105.

As further depicted in FIG. 1, system 100 may further include a networkinterface 111 in communication with processor 105. For example, networkinterface 111 may communicate (e.g., via a wired connection and/or awireless connection) with one or more remote servers (such as remoteserver 113).

FIG. 2A is a schematic representation of example film 200. Example film200 may be used in, for example, interactive projection system 100 ofFIG. 1. Although depicted as a rectangle, film 200 may be formed in anyappropriate shape, such as square, parallelogram, rhombus, circular,oval, elliptical, or the like.

As depicted in FIG. 2A, film 200 may include one or more embeddedsensors (e.g., sensors 203 a and 203 b). Although the sensors of FIG. 2Aare depicted as arranged in a rectangular array, the sensors may bearranged in any appropriate shape, such as a square, a parallelogram, arhombus, a circle, an oval, an ellipse, or the like. The sensors may bearranged in a shape matching the shape of the film or differing from theshape of the film. Although not depicted in FIG. 2A, one or more of thesensors may be wired together to communicate with each other and/or inseries along rows and/or columns. Additionally or alternatively, one ormore of the sensors may include antennae to communicate with each other.

In some embodiments, the sensors (e.g., sensors 203 a and 203 b) may bewired together in a ring topology such that each sensor passes messages(or measurements or detections) to one or more neighbors downstream onthe ring through one or more designated downstream ports until themessages return to the originating node. Alternatively, the sensors(e.g., sensors 203 a and 203 b) may be wired together in a lineartopology such that messages are passed back to a given node's one ormore upstream neighbors through one or more designated upstream ports.Alternatively, the sensors (e.g., sensors 203 a and 203 b) may be wiredtogether in a bus topology such that sensors are configured to detect,avoid, and/or recover from communication collisions. In suchembodiments, the sensors (e.g., sensors 203 a and 203 b) may be governedby a bus arbiter device (not depicted) that prohibits communicationunless elicited. Alternatively, the sensors (e.g., sensors 203 a and 203b) may be configured in a star topology to a master controller such thatcommunication does not need to be arbitrated.

In any of the embodiments described above, the networks may be arrangedsuch that each sensor on a given row is on the same network and/or suchthat each sensor on a given column is on the same network. Accordingly,the networks may be arranged such that each row is tied to a commoncathode or anode and/or each column is tied to the opposite (anode orcathode). In such embodiments, one row and/or one column may activate ata time. Alternatively, the networks may be arranged in a “charlieplexed”manner such that only one sensor is active at a time based on wiringeach sensor to different general-purpose input/output (GPIO) pins of aprocessor (e.g., processor 205, described below), and then drawing oneGPIO pin high and another GPIO pin low such that current flow onlyoccurs through one sensor. In any of the embodiments listed above, thesensors may comprise diodes.

In some embodiments, the sensors (e.g., sensors 203 a and 203 b) maycommunicate using a protocol, such as Recommended Standard 232 (RS-232)or the like, involving transmission and receive (TX & RX) functionalityat a predetermined, pre-configured rate. Alternatively, the sensors(e.g., sensors 203 a and 203 b) may communicate using a master/slaveprotocol, such as Inter-Integrated Circuit (I2C), Dallas 1-Wire, or thelike, in which data and a governing clock signal are sent along one ormore wires, and slave sensors are activated by the master (e.g., amaster sensor or processor 205, described below) by their identifiers,thus keeping communication in sync. Alternatively, the sensors (e.g.,sensors 203 a and 203 b) may communicate along a protocol that uses asingle wire for TX and a single wire for RX. For example, the sensorsmay communicate using a protocol involving differential signaling suchthat two inverted signals are sent along two different wires, in orderto prevent against spurious electromagnetic noise.

In some embodiments, as depicted in FIG. 2A, the film may furtherinclude a microprocessor 205 and a wireless communications device 207embedded therein. Although not depicted in FIG. 2A, microprocessor 205and wireless communications device 207 may be wired together and/or withone or more sensors. Additionally or alternatively, microprocessor 205and/or wireless communications device 207 may include antennae tocommunicate with each other and/or with one or more sensors.

In some embodiments, as further depicted in FIG. 2A, the film mayfurther include a focusing assistant 209. For example, focusingassistant 209 may comprise a beacon that transmits (e.g., wirelessly orby using wireless communications device 207) a signal to a projector toassist the projector with projecting onto the film. For example, thesignal may include an indicator of orientation of the film. Accordingly,the beacon may comprise a magnetometer, a geomagnetic field sensor, orany other positional sensor, or a combination thereof. The signal mayfurther include an indicator of size of the film. For example, thesignal may indicate the total dimensions of the film, a center point ofthe film, a focal point of the film, or the like.

Additionally or alternatively, focusing assistant 209 may comprise aregistration mark having a particular pattern. The projector may capturean image of the registration mark before projection and analyze theimage to determine an orientation of the film. Based on the determinedorientation and known properties of the film (such as the dimensions ofthe film, the placement of the registration mark on the film, a focalpoint of the film, or the like), the projector may project onto thefilm.

FIG. 2B is a schematic representation of a cross-section of example film200. As depicted in FIG. 2B, film 200 may include a first layer 201 aand a second layer 201 b that are affixed to each other, e.g., via anadhesive, via lamination, or the like. Moreover, the one or more sensorsof film 200 (e.g., sensors 203 d and 203 e) may be embedded betweenfirst layer 201 a and second layer 201 b. Alternatively, first layer 201a and second layer 201 b may be formed integrally with the one or moresensors therebetween.

FIG. 3 is a schematic representation of example projector 300. Exampleprojector 300 may be used in, for example, interactive projection system100 of FIG. 1. Although depicted as using a bulb-based illuminationsystem, projector 300 may additionally or alternatively use alaser-based illumination system.

As depicted in FIG. 3, projector 300 may include an illumination system303 (e.g., one or more bulbs) and a focusing system 301 (e.g., includingone or more lenses). In embodiments where illumination system 303 islaser-based, projector 300 may lack focusing system 301 because thelaser(s) may be self-focusing.

In some embodiments, projector 300 may further include a processor 305and/or a wireless communications device 307. For example, processor 305may perform one or more steps of the methods disclosed herein and/or mayprocess received graphics into images for projection. Wirelesscommunications device 307 may communicate over one or more wirelessnetworks.

As further depicted in FIG. 3, projector 300 may include a power control309 (e.g., a button or switch) and/or a ventilation system 311. Inembodiments where projector 300 uses one or more low-powered lasers asillumination system 303, projector 300 may lack ventilation system 311as the cooling therefrom may not be necessary.

FIG. 4A is a schematic representation of an example interactiveprojection system 400 used on a vehicle window. As depicted in FIG. 4A,film 401 is affixed to a vehicle window. Projector 403 may then beconfigured to project to film 401. As depicted in FIG. 4A, projector 403may be configured to project an image 405 onto a surface that is notfully perpendicular to the plane of the projector. Accordingly, aprocessor of projector 403 may perform adjustments to received graphicsin order to project the image 405 formed by the graphics onto thenon-perpendicular surface without distortion.

FIG. 4B is a schematic representation of another example interactiveprojection system 450 used on a vehicle window. Similar to system 400 ofFIG. 4A, in FIG. 4B, film 401 is affixed to a vehicle window, andprojector 403′ is configured to project to film 401. However, asdepicted in FIG. 4B, projector 403′ may be located inside the vehiclerather than outside (as depicted in FIG. 4A). Accordingly, projector403′ is configured to perform rear projection rather than frontprojection. Such a configuration may use a processor of projector 403 toperform adjustments to received graphics in order to project the image405 formed by the graphics without reversing image 405. Moreover,similar to system 400 of FIG. 4A, in FIG. 4B, the processor of projector403 may also perform adjustments to received graphics in order toproject the image 405 formed by the graphics onto the non-perpendicularsurface without distortion.

Although both FIGS. 4A and 4B depict film 401 on the outer surface ofthe vehicle window, other embodiments may use film 401 affixed to theinner surface of the vehicle window. For example, in some embodiments,an interactive projection system may perform front projection on film401 affixed to the inner surface of a vehicle window. In otherembodiments, an interactive projection system may perform rearprojection on film 401 affixed to the inner surface of a vehicle window.

FIG. 5 is another schematic representation of an example interactiveprojection system 500 used on a vehicle window. As depicted in FIG. 5,film 503 is affixed to a vehicle window. Projector 501 may then beconfigured to project to film 503. Similar to system 400 and as depictedin FIG. 5, projector 501 may be configured to project an image onto asurface that is not fully perpendicular to the plane of projector.Accordingly, a processor of projector 503 may perform adjustments toreceived graphics in order to project the image formed by the graphicsonto the non-perpendicular surface without distortion.

FIG. 6 is a flowchart of exemplary method 600 for enabling userinteraction with a projection system. Exemplary method 600 may beimplemented by, for example, processor 105 of system 100 of FIG. 1and/or a microprocessor embedded with a film of system 100 of FIG. 1.Exemplary method 600 may further be implemented using anothergeneral-purpose computer or special-purpose computer having at least oneprocessor.

At step 601, the processor may receive a detection of a local pressuredisturbance from at least one of a plurality of sensors. For example,the plurality of sensors may be embedded within a film. The detectionmay be received via a wired connection and/or via a wireless connection.

At step 603, based on a location of the detected local pressuredisturbance, the processor may determine a change in a user interface.For example, as explained above, the determined change in the userinterface may include a popup window, increasing or decreasing a size ofat least one component (for example, a window, a graphic, a text box, abutton, or the like) of the user interface, increasing or decreasing atransparency of at least one component of the user interface, changing acolor of at least one component of the user interface, adding a newcomponent to or removing a component from the user interface,reorganizing at least one component of the user interface, or the like.In another example, the determined change in the user interface maycomprise a replacement user interface.

In some embodiments, the processor may determine the location of thelocal pressure disturbance based on an identification of the at leastone sensor from which the detection is received. For example, asexplained above, the location may be determined as at or near a knownlocation of the at least one sensor.

In embodiments where the at least one sensor from which the detection isreceived includes at least two sensors, determining the location of thelocal pressure disturbance may be based on an interpolation of localpressures measured by at least two of the plurality of sensors. Forexample, a weighted average may be used when two sensors send thedetection. Similarly, triangulation may be used for embodiments with atleast three sensors sending the detection.

In some embodiments, determining the change in the user interface may bebased on a change in the location over a period of time. For example, achange in location may be indicative of a user dragging her finger onthe user interface, which may result in a different change to the userinterface than one or more taps. In such embodiments, determining thechange in the user interface may further be based on at least one of amagnitude of the change in location and a magnitude of the period oftime. For example, the magnitude of the change in location may be usedto determine the change in the user interface if the change in locationis indicative of a drag-and-drop motion. In another example, themagnitude of the period of time may be used to determine the change inthe user interface if the change in location is indicative of ascrolling motion.

At step 605, the processor may transmit a command to a projector tomodify a projected user interface according to the determined change.For example, the processor may transmit the commands including thedetermined change (e.g., new graphics, new text, new sizes, newtransparencies, new user interface, or the like) through a wiredconnection and/or a wireless connection to the projector.

FIG. 7 is a flowchart of exemplary method 700 for configuring aprojection system for animation based on user interaction. Exemplarymethod 700 may be implemented by, for example, processor 105 of system100 of FIG. 1 and/or a microprocessor embedded with a film of system 100of FIG. 1. Exemplary method 700 may further be implemented using anothergeneral-purpose computer or special-purpose computer having at least oneprocessor.

At step 701, the processor may generate a user interface. For example,as explained above, the processor may select one or more graphics, text,and the like and organize the selected components into a user interface.The selected components may be retrieved from one or more memoriesand/or from one or more remote servers.

At step 703, the processor may transmit a command to a projector toproject the user interface onto a film. For example, similar to step 605of method 600, the processor may transmit the command including thegenerated interface (e.g., graphics, text, sizes thereof, transparenciesthereof, or the like) through a wired connection and/or a wirelessconnection to the projector.

At step 705, the processor may receive pressure measurements from atleast one of a plurality of sensors. For example, the plurality ofsensors may be embedded within a film. The processor may receive thepressure measurements in a manner similar to the operation of step 601of method 600, described above.

At step 707, the processor may determine that the pressure measurementsare indicative of a particular motion. For example, the particularmotion may be a scrolling motion. In such a case, determining that thepressure measurements are indicative of a scrolling motion may be basedon spatial changes of the pressure measurements over a period of time.For example, the spatial changes matching a scrolling motion may includechanges that are substantially vertically (e.g., within 30 degrees,within 20 degrees, within 10 degrees, or the like of a vertical axis ofthe film). In addition, the determination may further depend on amagnitude of the period of time. For example, spatial changes over areasonable period of time (e.g., 500 milliseconds, 1 second, 2 seconds,or the like) may match a scrolling motion. Additionally oralternatively, determining that the pressure measurements are indicativeof a scrolling motion may be based on identifying a single approximatecenter of a local pressure disturbance represented by the pressuremeasurements.

The spatial changes determined in this example may be spatial changeswith respect to one or more localized pressure disturbances.Additionally or alternatively, the spatial changes determined in thisexample may be spatial changes with respect to a “center of mass” of thesensors. For example, the “center of mass” may be calculated as aweighted average of pressure measurements.

In another example, the particular motion may be zooming motion. In sucha case, determining that the pressure measurements are indicative of azooming motion may be based on spatial changes of the pressuremeasurements over a period of time. For example, the spatial changesmatching a zooming motion may include pressure measurements that movetogether or apart from each other over the period of time. Additionally,determining that the pressure measurements are indicative of a zoomingmotion may be further based on a magnitude of the period of time.Additionally or alternatively, determining that the pressuremeasurements are indicative of a zooming motion may be based onidentifying two approximate centers of local pressure disturbancesrepresented by the pressure measurements.

The spatial changes determined in this example may be spatial changeswith respect to one or more localized pressure disturbances.Additionally or alternatively, the processor may determine spatialchanges in this example based on, e.g., finding clusters of sensors thatare near each other and that are experiencing changes using k-meansclustering or the like. Statistical techniques for finding anomalies(that is, the changes) may include calculating the sum of squareddifferences between current sensor readings and previous sensorreadings, setting a hard threshold as to what constitutes a pressuredisturbance (e.g., a particular pressure value), setting a floatingthreshold such that any sensor reading over a mean value (or a medianvalue, or the like) constitutes a pressure disturbance, or the like. Anyof the examples above may also include lowpass filtering to smooth outaberrations that may occur from signal noise, a two-dimensional filterto cancel out noise from disturbances that are larger than a reasonablesize (such as a fingertip), or the like.

At step 709, based on the determination, the processor may generate ananimation for the user interface. For example, as explained above, theprocessor may generate one or more frames, each frame having one or morecomponents forming a user interface, the frames arranged to create theappearance of change from one user interface to another when projectedin a sequence in rapid (e.g., 15 frames per second, 30 frames persecond, or the like) succession.

At step 711, the processor may transmit a plurality of commands to theprojector to project the animation of the user interface. For example,the processor may transmit the commands, each command including agenerated frame, through a wired connection and/or a wireless connectionto the projector.

FIG. 8 is a flowchart of exemplary method 800 for configuring aprojection system for user interaction. Exemplary method 800 may beimplemented by, for example, processor 105 of system 100 of FIG. 1and/or a microprocessor embedded with a film of system 100 of FIG. 1.Exemplary method 800 may further be implemented using anothergeneral-purpose computer or special-purpose computer having at least oneprocessor.

At step 801, the processor may receive pressure measurements from awireless communications device. For example, the wireless communicationsdevice may receive the pressure measurements from a plurality of sensorsembedded within a film. In some embodiments, the wireless communicationsdevice may also be embedded within the film. In other embodiments, thewireless communications device may be remote from the film and receivethe measurements via a wired connection and/or a wireless connection tothe sensors.

At step 803, the processor may determine a local pressure disturbancebased on the received pressure measurements. For example, the processormay map the measurements to known locations of the sensors on the filmand determine the local pressure disturbance based on the map.Additionally or alternatively, the processor may use one or morestatistical techniques to determine that one or more measurements areanomalous and thus represent a local pressure disturbance.

At step 805, based on a location of the determined local pressuredisturbance, the processor may determine a change in a user interface.For example, step 805 may be performed in a manner similar to theoperation of step 603 of method 600, described above.

At step 807, the processor may transmit a command to a projector tomodify a projected user interface according to the determined change.For example, step 807 may be performed in a manner similar to theoperation of step 605 of method 600, described above.

FIG. 9 is a flowchart of exemplary method 900 for configuring aprojection system for proximity-based projection. Exemplary method 900may be implemented by, for example, processor 105 of system 100 of FIG.1 and/or a microprocessor embedded with a film of system 100 of FIG. 1.Exemplary method 900 may further be implemented using anothergeneral-purpose computer or special-purpose computer having at least oneprocessor.

At step 901, the processor may receive an indication of proximity of amobile device. The processor may receive the indication directly fromthe mobile device or through an intermediary. For example, anintermediary may include a Wi-Fi (or other wireless networking hotspot)to which the mobile device has connected.

The indication of proximity may include a GPS location of the mobiledevice. Additionally or alternatively, the indication of proximity mayinclude at least one of a received signal strength, a time of arrival,or an angle of arrival of one or more network signals at the mobiledevice. Accordingly, the processor may determine a location of themobile device based on the indication and determine proximity bycomparing a distance between the determined location to a predeterminedlocation (e.g., at or near one or more components of system 100) with athreshold (e.g., 30 yards, 10 feet, or the like).

At step 903, in response to the indication of proximity, the processormay generate a user interface. For example, step 903 may be performed ina manner similar to the operation of step 701 of method 700, describedabove.

At step 905, the processor may transmit a command to a projector toproject the generated user interface. For example, step 905 may beperformed in a manner similar to the operation of step 703 of method700, described above. In some embodiments, transmitting the command maybe performed in response to the indication of proximity and/or inresponse to generating the user interface.

Method 900 may further include additional steps. For example, method 900may further include receive an indication that the mobile device isbeyond a proximity threshold. Similar to step 901, the processor mayreceive the indication directly from the mobile device or through anintermediary.

Similar to the indicator of proximity, the indicator that mobile deviceis beyond the proximity threshold may include an updated GPS location ofthe mobile device. Additionally or alternatively, the indication thatthe mobile device is beyond a proximity threshold may include at leastone of an updated received signal strength, an updated time of arrival,or an updated angle of arrival of one or more network signals at themobile device. Accordingly, the processor may determine an updatedlocation of the mobile device based on the indication and determine thatthe mobile device is beyond the proximity threshold by comparing adistance between the updated location to a predetermined location (e.g.,at or near one or more components of system 100) with the proximitythreshold (e.g., 30 yards, 10 feet, or the like).

The processor may be further configured to, in response to theindication that the mobile device is beyond the proximity threshold,transmit a command to the projector to power off. For example, theprocessor may send the command via a wired connection to the projectorand/or via a wireless connection to the projector. In embodiments wherethe projector is adapted to have a power on mode and a low power mode,the command may be to switch from the power on mode to the low powermode.

FIG. 10 is a flowchart of exemplary method 1000 for configuring aprojection system for proximity-based projection. Exemplary method 1000may be implemented by, for example, processor 105 of system 100 of FIG.1 and/or a microprocessor embedded with a film of system 100 of FIG. 1.Exemplary method 1000 may further be implemented using anothergeneral-purpose computer or special-purpose computer having at least oneprocessor.

At step 1001, the processor may receive an indication of proximity of amobile device. For example, step 1001 may be performed in a mannersimilar to the operation of step 901 of method 900, described above.

At step 1003, in response to the indication of proximity, the processormay transmit a command to a projector to switch from a low power mode toa power on mode. A “low power” mode may comprise a mode in which theprojector retains power to one or more components (e.g., processor 305,communications device 307, ventilation system 311, or any combinationthereof) and not other components (e.g. illumination 303). Additionallyor alternatively, a “low power” mode may comprise a mode in which theprojector still projects but with less intensity than in the “power on”mode. The processor may send the command via a wired connection to theprojector and/or via a wireless connection to the projector.

At step 1005, the processor may generate a user interface. For example,step 1005 may be performed in a manner similar to the operation of step903 of method 900, described above. In some embodiments, generating theuser interface may be performed in response to the indication ofproximity and/or in response to transmitting the command to theprojector.

At step 1007, the processor may transmit a command to the projector toproject the generated user interface. For example, step 1007 may beperformed in a manner similar to the operation of step 905 of method900, described above.

Method 1000 may further include additional steps. For example, method1000 may further include receiving an indication that the mobile deviceis beyond a proximity threshold and, in response to the indication thatthe mobile device is beyond the proximity threshold, transmitting acommand to the projector to switch to the low power mode from the poweron mode. For example, these additional steps may be performed in amanner similar to the operation of the additional steps of method 900,described above.

FIG. 11 is a flowchart of exemplary method 1100 for configuring aprojection system with proximity-based power control. Exemplary method1100 may be implemented by, for example, processor 105 of system 100 ofFIG. 1 and/or a microprocessor embedded with a film of system 100 ofFIG. 1. Exemplary method 1100 may further be implemented using anothergeneral-purpose computer or special-purpose computer having at least oneprocessor.

At step 1101, the processor may receive an indication of proximity of amobile device. For example, step 1101 may be performed in a mannersimilar to the operation of step 901 of method 900, described above.

At step 1103, in response to the indication of proximity, the processormay transmit a command to the projector to power on. For example, a“power on” mode may comprise a mode in which all components of theprojector are powered and/or a mode in which the projector projects butwith greater intensity than in the “low power” mode. The processor maysend the command via a wired connection to the projector and/or via awireless connection to the projector. In embodiments where the projectoris adapted to have a power on mode and a low power mode, the command maybe to switch from the low power mode to the power on mode.

At step 1105, the processor may generate a user interface. For example,step 1105 may be performed in a manner similar to the operation of step903 of method 900, described above. In some embodiments, generating theuser interface may be performed in response to the indication ofproximity and/or in response to transmitting the command to theprojector.

At step 1107, the processor may transmit a command to a projector toproject the generated user interface. For example, step 1107 may beperformed in a manner similar to the operation of step 905 of method900, described above.

At step 1109, the processor may receive an indication that the mobiledevice is beyond a proximity threshold, in a manner similar to theoperation explained above with respect to method 900.

At step 1111, in response to the indication that the mobile device isbeyond the proximity threshold, the processor may a command to theprojector to power off. For example, a “power off” mode may comprise amode in which the components of the projector do not receive power. Theprocessor may send the command via a wired connection to the projectorand/or via a wireless connection to the projector. In embodiments wherethe projector is adapted to have a power on mode and a low power mode,the command may be to switch from the power on mode to the low powermode.

Any of methods 900, 1000, and 1100 may be combined with methods 600,700, and 800 such that the proximity-based projection and/or powercontrol of methods 900, 1000, and/or 1100 may be incorporated into theinteractive features of methods 600, 700, and/or 800.

FIG. 12 is a flowchart of exemplary method 1200 for generating acustomized user interface for an interactive projection system.Exemplary method 1200 may be implemented by, for example, processor 105of system 100 of FIG. 1 and/or a microprocessor embedded with a film ofsystem 100 of FIG. 1. Exemplary method 1200 may further be implementedusing another general-purpose computer or special-purpose computerhaving at least one processor.

At step 1201, the processor may receive one or more indicators ofinterest associated with a mobile device. For example, the processor mayreceive the indicators from one or more applications running on themobile device. Additionally or alternatively, the processor may use anauthorization obtained from the mobile device to retrieve the indicatorsform one or more remote servers. For example, the process may haveobtained the authorization from an intermediary, such as a Wi-Fi device(or other wireless networking hotspot), that the mobile device providedupon connecting to the intermediary. For example, the mobile device mayprovide the authorization as a condition of connecting to theintermediary and/or of receiving access to a network (such as anInternet) through the intermediary.

At step 1203, the processor may generate a customized user interfacebased on the one or more indicators. For example, as explained above,the processor may select and/or organize one or more componentscomprising the customized user interface to prioritize componentsaligned with the indicators of interest. For example, the processor maymap the indicators of interest to one or more predetermined profileshaving one or more characteristics and may select the components using arelational database indexing characteristics to user interfacecomponents. Additionally or alternatively, the processor may determinestrength scores for each indicator of interest and then organize theselected components to prioritize those matching indicators with thehighest scores.

In some embodiments, the processor may determine one or more automotivepreferences based on the one or more indicators and then generate thecustomized user interface based on the one or more automotivepreferences. For example, the one or more automotive preferences mayinclude at least one of gas mileage, horsepower, towing capacity, trunkspace, number of seats, and acceleration. As explained above, theindicators may be mapped to one or more automotive preferences, e.g.,using a relational database and/or a feature model. Accordingly,generating the customized user interface may be based on the one or moreautomotive preferences, similar to the generation based on theindicators explained above.

At step 1205, the processor may transmit a command to the projector toproject the customized user interface. For example, the processor maytransmit the command in a manner similar to the transmission of step905, described above.

Method 1200 may further include additional steps. For example, method1200 may further include receiving an indication that the mobile deviceis beyond a proximity threshold. For example, the processor may receivethe indication directly from the mobile device or through anintermediary (e.g., the intermediary used in step 1201, describedabove).

As explained above, the indication of proximity may include a GPSlocation of the mobile device. Additionally or alternatively, theindication of proximity may include at least one of a received signalstrength, a time of arrival, or an angle of arrival of one or morenetwork signals at the mobile device. Accordingly, the processor maydetermine a location of the mobile device based on the indication anddetermine proximity by comparing a distance between the determinedlocation to a predetermined location (e.g., at or near one or morecomponents of system 100) with a threshold (e.g., 30 yards, 10 feet, orthe like).

Additionally or alternatively, method 1200 may include receiving asecond indication of proximity of a second mobile device. For example,the processor may receive GPS coordinates and/or other positionalindicators from which the processor may determine a location of thesecond mobile device, or may receive the location directly from thesecond mobile device and may then determine whether the location of thesecond mobile device is within a particular threshold that may comprisethe proximity threshold.

In response to the indication that the mobile device is beyond theproximity threshold and/or in response to the second indication, theprocessor may generate a default user interface and transmit a commandto the projector replace the customized user interface with the defaultuser interface. The “default user interface” may comprise a selectionand/or organization of one or more components comprising the customizeduser interface that is not based on particular indicators of interest(or automotive preferences). For example, the processor may transmit thecommand in a manner similar to step 1205, described above.

Method 1200 may be combined with any of methods 900, 1000, and/or 1100such that the generation of customized user interfaces may be combinedwith the proximity-based projection and/or power control of methods 900,1000, and/or 1100. Moreover, the customized user interfaces (and/ordefault user interfaces) described above may be rendered interactive,e.g., by combining method 1200 with any of methods 600, 700, and/or 800.

The foregoing description has been presented for purposes ofillustration. It is not exhaustive and is not limited to precise formsor embodiments disclosed. Modifications and adaptations of theembodiments will be apparent from consideration of the specification andpractice of the disclosed embodiments. For example, the describedimplementations include hardware and software, but systems and methodsconsistent with the present disclosure can be implemented with hardwarealone. In addition, while certain components have been described asbeing coupled to one another, such components may be integrated with oneanother or distributed in any suitable fashion.

Moreover, while illustrative embodiments have been described herein, thescope includes any and all embodiments having equivalent elements,modifications, omissions, combinations (e.g., of aspects across variousembodiments), adaptations and/or alterations based on the presentdisclosure. The elements in the claims are to be interpreted broadlybased on the language employed in the claims and not limited to examplesdescribed in the present specification or during the prosecution of theapplication, which examples are to be construed as nonexclusive.Further, the steps of the disclosed methods can be modified in anymanner, including reordering steps and/or inserting or deleting steps.

Instructions or operational steps stored by a computer-readable mediummay be in the form of computer programs, program modules, or codes. Asdescribed herein, computer programs, program modules, and code based onthe written description of this specification, such as those used by thecontroller, are readily within the purview of a software developer. Thecomputer programs, program modules, or code can be created using avariety of programming techniques. For example, they can be designed inor by means of Java, C, C++, assembly language, or any such programminglanguages. One or more of such programs, modules, or code can beintegrated into a device system or existing communications software. Theprograms, modules, or code can also be implemented or replicated asfirmware or circuit logic.

The features and advantages of the disclosure are apparent from thedetailed specification, and thus, it is intended that the appendedclaims cover all systems and methods falling within the true spirit andscope of the disclosure. As used herein, the indefinite articles “a” and“an” mean “one or more.” Similarly, the use of a plural term does notnecessarily denote a plurality unless it is unambiguous in the givencontext. Words such as “and” or “or” mean “and/or” unless specificallydirected otherwise. Further, since numerous modifications and variationswill readily occur from studying the present disclosure, it is notdesired to limit the disclosure to the exact construction and operationillustrated and described, and accordingly, all suitable modificationsand equivalents may be resorted to, falling within the scope of thedisclosure.

Other embodiments will be apparent from consideration of thespecification and practice of the embodiments disclosed herein. It isintended that the specification and examples be considered as exampleonly, with a true scope and spirit of the disclosed embodiments beingindicated by the following claims.

What is claimed is:
 1. An interactive projection system for a vehiclewindow, the system comprising: a film; a projector configured to projecta user interface onto the film; and at least one processor configured toperform operations comprising: receiving an indication of proximity fromone or more applications running on a plurality of mobile devices;determining a location for each of the plurality of mobile devices basedon the indication; determining a proximity distance and an angle rangeby comparing the determined location and a system location; selecting afirst mobile device from the plurality of mobile devices, based on acombination of the proximity distance and the angle range, wherein theproximity distance is within a proximity threshold and the proximitythreshold is based on the angle range; in response to the selection ofthe first mobile device, generating a user interface; and transmitting acommand to the projector to project the generated user interface.
 2. Theinteractive projection system of claim 1, wherein the indication ofproximity includes a GPS location of each respective mobile device. 3.The interactive projection system of claim 1, wherein the indication ofproximity includes at least one of a received signal strength, a time ofarrival, or an angle of arrival of one or more network signals at eachrespective mobile device.
 4. The interactive projection system of claim1, wherein the operations further comprise: receiving one or moreindicators of interest associated with the first mobile device,generating a customized user interface based on the one or moreindicators, and transmitting a command to the projector to project thecustomized user interface.
 5. The interactive projection system of claim4, wherein the one or more indicators of interest are received directlyfrom the first mobile device.
 6. The interactive projection system ofclaim 4, wherein the one or more indicators of interest are retrievedfrom a remote server using one or more authorizations received from thefirst mobile device.
 7. The interactive projection system of claim 4,wherein the operations further comprise: determining one or moreautomotive preferences based on the one or more indicators, andgenerating the customized user interface based on the one or moreautomotive preferences.
 8. The interactive projection system of claim 7,wherein the one or more automotive preferences include at least one ofgas mileage, horsepower, towing capacity, trunk space, number of seats,and acceleration.
 9. The interactive projection system of claim 4,wherein the operations further comprise: receiving an indication thatthe first mobile device is beyond a proximity threshold, in response tothe indication that the first mobile device is beyond the proximitythreshold, generating a default user interface, and transmitting acommand to the projector to replace the customized user interface withthe default user interface.
 10. The interactive projection system ofclaim 4, wherein the operations further comprise: receiving a secondindication of proximity of a second mobile device, in response to thesecond indication, generating a default user interface, and transmittinga command to the projector to replace the customized user interface withthe default user interface.
 11. An interactive projection system for avehicle window, the system comprising: a film; a projector adapted tohave a power on mode and a low power mode; and at least one processorconfigured to perform operations comprising: receiving an indication ofproximity from one or more applications running on a plurality of mobiledevices; determining a location for each of the plurality of mobiledevices based on the indication; determining a proximity distance and anangle range by comparing the determined location and a system location;selecting a first mobile device from the plurality of mobile devices,based on a combination of the proximity distance and the angle range,wherein the proximity distance is within a proximity threshold and theproximity threshold is based on the angle range; in response to theselection of the first mobile device, transmitting a command to theprojector to switch from the low power mode to the power on mode;generating a user interface based on the selection of the first mobiledevice; and transmitting a command to the projector to project thegenerated user interface.
 12. The interactive projection system of claim11, wherein the indication of proximity includes a GPS location of eachrespective mobile device.
 13. The interactive projection system of claim11, wherein the indication of proximity includes at least one of areceived signal strength, a time of arrival, or an angle of arrival ofone or more network signals at each respective mobile device.
 14. Theinteractive projection system of claim 11, wherein the operationsfurther comprise: receiving one or more indicators of interestassociated with the first mobile device, generating a customized userinterface based on the one or more indicators, and transmitting acommand to the projector to project the customized user interface. 15.The interactive projection system of claim 14, wherein the one or moreindicators of interest are retrieved from a remote server using one ormore authorizations received from the first mobile device.
 16. Theinteractive projection system of claim 14, wherein the operationsfurther comprise: determining one or more automotive preferences basedon the one or more indicators, and generating the customized userinterface based on the one or more automotive preferences.
 17. Theinteractive projection system of claim 16, wherein the one or moreautomotive preferences include at least one of gas mileage, horsepower,towing capacity, trunk space, number of seats, and acceleration.
 18. Theinteractive projection system of claim 14, wherein the operationsfurther comprise: receiving an indication that the first mobile deviceis beyond a proximity threshold, and in response to the indication thatthe first mobile device is beyond the proximity threshold, transmittinga command to the projector to switch from the power on mode to the lowpower mode.
 19. The interactive projection system of claim 14, whereinthe operations further comprise: receiving a second indication ofproximity of a second mobile device, in response to the secondindication, generating a default user interface, and transmitting acommand to the projector to replace the customized user interface withthe default user interface.
 20. An interactive projection system for avehicle window, the system comprising: a film; a projector; and at leastone processor configured to perform operations comprising: receiving anindication of proximity from one or more applications running on aplurality of mobile devices; determining a location for each of theplurality of mobile devices based on the indication; determining aproximity distance and an angle range by comparing the determinedlocation and a system location; selecting a first mobile device from theplurality of mobile devices, based on a combination of the proximitydistance and the angle range, wherein the proximity distance is within aproximity threshold and the proximity threshold is based on the anglerange; in response to the selection of the first mobile device,transmitting a command to the projector to power on; generating a userinterface; transmitting a command to the projector to project thegenerated user interface; receiving an indication that the first mobiledevice is beyond a proximity threshold; and in response to theindication that the first mobile device is beyond the proximitythreshold, transmitting a command to the projector to power off.